home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 8 / The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO / g_quake / sambot.zip / ROAMBOT1.TXT < prev    next >
Text File  |  1996-09-03  |  4KB  |  133 lines

  1. Title    : roamBot
  2. Filename : roambot1.zip
  3. Version  : 0.9
  4. Date     : 96/9/3, 12:15am MDT.
  5. Author   : CARSON SUTTON ("Gwynn" on irc, "Crimson" to quake victims)
  6.  
  7. Email    : carson@compusmart.ab.ca       ** Comments please! **
  8.  
  9. Credits  : Micheal Polucha (co-designer of Original TM bot)
  10.            Tim Polucha (co-designer of Original TM bot)
  11.            Nathaniel Gorham (Original DM bot)
  12.            Punisher (BG bot...starting point for this work)
  13.            Stan Smith (for IDGlobe bubble idea)
  14.  
  15.  
  16. Type of Mod
  17. -----------
  18. Quake C  : yes
  19. Sound    : no
  20. MDL      : no
  21.  
  22.  
  23. Format of QuakeC
  24. ----------------
  25. unified diff  : no
  26. context diff  : no
  27. .qc files     : yes
  28. progs.dat     : yes
  29.  
  30.  
  31. Description of the Modification
  32. -------------------------------
  33. Punisher asked for better roaming AI for the basic
  34. bot design...I thought I'd take a crack at it with this
  35. very blunt hack.  Essentially BG Bot v1.2 with more
  36. unpredicatable and intelligent roaming behaviour, and
  37. a few minor additional touches:
  38.  
  39. - Bot follows its OWN target entity while roaming,
  40.   thus direction of roaming bot not tied to
  41.   creator or (last) target entity.  "Leader" entity
  42.   assigned pseudo-random directional and "dead end"
  43.   detection routines.  Standard turn left, turn right
  44.   AI too predictable, so bot pulls a u-turn or heads
  45.   off-center at obstacles.
  46. - Bot RUNS instead of walks while roaming.  Makes
  47.   them much more effective.
  48. - Bot will turn around (180) at ledges/obstacles
  49.   after timeout.
  50. - Bot will go through doors and teleporters.
  51. - Bot only hunts detected items if visible.
  52. - Bot gives up hunting target after 5 secs. if
  53.   no longer visible.
  54. - Better heath, less idle noise, a little near-sighted
  55.   (for game speed with more bots), etc.
  56. - Added shotgun shells ejecting just for fun.
  57.  
  58. - Anything else I missed...
  59.  
  60. Impulse 100 creates a bot. There is no way to
  61. get rid of a bot until it is killed.  They are
  62. somewhat autonomous, and will try to make life
  63. difficult for everyting around them.
  64.  
  65.  
  66. How to Install the Modification
  67. -------------------------------
  68. Make a new dir in your quake directory (ie: c:\quake\roam).
  69. Then extract the contents of this zip into that dir.
  70. Move .mdl into new dir 'c:\quake\roam\progs\', and .wav's
  71. into new dir 'c:\quake\roam\sound\weapons\'.
  72. Run quake with the following command line parameter:
  73.  
  74.          quake -game roam
  75.  
  76. Bind a key to impulse 100 to activate the bot.
  77.  
  78.  
  79. Technical Details
  80. -----------------
  81. To get a play-by-play from each bot (careful, not uniquely
  82. identified!) indicating direction changes and decisions
  83. during roaming, change the following in bot.h:
  84.  
  85. from:
  86.     float   ROAM_DEVEL    = FALSE;
  87. to:
  88.     float   ROAM_DEVEL    = TRUE;
  89.  
  90. As I looked through the basic bot design available today,
  91. I noticed that it was essentially a souped-up monster.
  92. The bot used monster AI "movetogoal(dist)"-type movement as
  93. the basis for roaming, with "self.goalentity" initially assigned
  94. to the bot's creator or attacker.
  95.  
  96. In this hack I simply added an independent goal entity for the
  97. bot to follow around when it can't find any items or targets.
  98. This "leader" simply moves around ahead of the bot, mapped onto
  99. the nearest obstacle along its path (wall, player, etc.), and decides
  100. on a new direction based on a not-quite-random heading change
  101. or timeout when the bot is a certain distance away.  Easy.
  102.  
  103. Not much of a start, but I know somebody out there will fine tune
  104. it into something reasonably threatening.  Now to work on
  105. DEFENSIVE/EVASIVE behaviour!
  106.  
  107.  
  108. Author Information
  109. ------------------
  110. Quake-minded systems admin. whose fiancee is ready to trash the
  111. marriage-killer device any second.
  112.  
  113. ** Please forgive mediocre spelling or grammer...it's late. **
  114.  
  115.  
  116. Copyright and Distribution Permissions
  117. --------------------------------------
  118.  
  119. Copyright (c) 1996 Carson Sutton.
  120.  
  121. Authors MAY use these modifications as a basis for other
  122. work providing they credit me if reusing or modifying any
  123. original code.
  124.  
  125.  
  126. Availability
  127. ------------
  128.  
  129. This modification will initially be available only from
  130. the following:
  131.  
  132. FTP : ftp.cdrom.com
  133.